home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Apple II Magazines (PO)
/
Nibble Volume 09, No. 08 (1988-08)(MicroSPARC)(Side A).zip
/
Nibble Volume 09, No. 08 (1988-08)(MicroSPARC)(Side A).po
/
SLOT3.IO.ASM.txt
< prev
next >
Wrap
Text File
|
1996-12-24
|
3KB
|
94 lines
;................................................................
;
; Set slot 3 text I/O:
;................................................................
; Save entry I/O configuration:
Set_S3 START
PHA ;reserve space for results
PHA
PHA
_GetInputDevice
PullLong IO_Data ;save input slot or vector
PullWord IO_Data+4 ;save input device code
PHA ;reserve space for results
PHA
_GetInGlobals
PullWord IO_Data+6 ;save input OR mask
PullWord IO_Data+8 ;save input AND mask
PHA ;reserve space for results
PHA
PHA
_GetOutputDevice
PullLong IO_Data+10 ;save output slot/vector
PullWord IO_Data+14 ;save output device code
PHA ;reserve space for results
PHA
_GetOutGlobals
PullWord IO_Data+16 ;save output OR mask
PullWord IO_Data+18 ;save output AND mask
; Set slot 3 text I/O (negative ASCII):
PushWord #0 ;BASIC device type
PushLong #3 ;Input from slot 3
_SetInputDevice ;no result
PushWord #0 ;BASIC device type
PushLong #3 ;Output to slot 3
_SetOutputDevice ;no result
PushWord #$FF ;AND mask (no change)
PushWord #$80 ;OR mask (set high bit)
_SetInGlobals ;no result
PushWord #$FF ;AND mask (no change)
PushWord #$80 ;OR mask (set high bit)
_SetOutGlobals ;no result
PushWord #0 ;input device
_InitTextDev
PushWord #1 ;output device
_InitTextDev
RTL
;................................................................
;
; Restore entry I/O configuration:
;................................................................
Restore_IO ENTRY
PushWord IO_Data+18 ;output AND mask
PushWord IO_Data+16 ;output OR mask
_SetOutGlobals
PushWord IO_Data+14 ;output device code
PushLong IO_Data+10 ;output slot/vector
_SetOutputDevice
PushWord IO_Data+8 ;input AND mask
PushWord IO_Data+6 ;input OR mask
_SetInGlobals
PushWord IO_Data+4 ;input device code
PushLong IO_Data ;input slot/vector
_SetInputDevice
PushWord #0 ;input device
_InitTextDev
PushWord #1 ;output device
_InitTextDev
RTL
IO_Data DS 20 ;I/O configuration storage
END